package com.sczmgk.hotline_pzh.callback;
import android.view.View.OnClickListener;

import com.sczmgk.hotline_pzh.popup.PupDialog;

/**
 * 修改activity的属性的回调方法
 * 
 */
public interface ActivityCallback {
    /**
     * 进入此界面是否需要登录
     */
    boolean getIsNeedLogin();

    /**
     * 显示title头
     */
    void visibleHeadView();

    /**
     * 设置左边按钮显示状态
     */
    void setLeftBtnEnabled(boolean enabled);

    /**
     * 设置左边按钮显示状态
     */
    void setLeftBtnVisibility(int visible);

    /**
     * 设置左边按钮背景
     */
    void setLeftBtnBackground(int resource);

    /**
     * 设置左边按钮背景
     */
    void setLeftBtnBackground(int resource, int text);

    /**
     * 设置左边按钮背景
     */
    void setLeftBtnBackground(int resource, int text, int textColorResource);

    /**
     * 获取左边按钮的背景资源ID
     */
    void setLeftBtnTextColor(int textColorResource);

    /**
     * 设置左边按钮的文字
     */
    void setLeftBtnText(String text);

    /**
     * 设置左边按钮背景 一旦为左边按钮设置监听，将会导致无法切换menu菜单
     */
    void setLeftBtnClickListener(OnClickListener listener);

    /**
     * 设置左边按钮显示状态
     */
    void setRightBtnEnabled(boolean enabled);

    /**
     * 设置右边按钮显示状态
     */
    void setRightBtnVisibility(int visible);

    /**
     * 设置右边按钮背景
     */
    void setRightBtnBackground(int resource);
    
    /**
     * 设置右边按钮描述
     */
    void setRightBtnDescription(String desc); 

    /**
     * 设置右边按钮背景
     */
    void setRightBtnBackground(int resource, int text);

    /**
     * 设置右边按钮背景
     */
    void setRightBtnBackground(int resource, int text, int textColorResource);

    /**
     * 获取左边按钮的背景资源ID
     */
    void setRightBtnTextColor(int textColorResource);

    /**
     * 设置右边按钮文字
     */
    void setRightBtnText(int resid);

    /**
     * 设置左边按钮背景 一旦为左边按钮设置监听，将会导致无法切换menu菜单
     */
    void setRightBtnClickListener(OnClickListener listener);

    /**
     * 设置标题icom
     */
    void setTitleIcon(int resource);

    /**
     * 设置标题
     */
    void setTitle(int resource);

    /**
     * 设置标题
     */
    void setTitle(String title);

    /**
     * 设置标题颜色
     */
    void setTitleColor(int color);

    /**
     * 设置头部背景
     */
    void setHeadBackgroudColor(int color);
    /**
     * 设置标题栏显示状态
     */
    void setHeadViewVisibility(int visible);
    /**
     * 显示底部弹出框
     * 
     * @param pupid 弹出框的 id
     * @param pupEvent 弹出框 按钮的监听事件接口
     */
    void showPup(String pupid, PupDialog.PupEvent pupEvent);


    /**
     * 设置左边第二个按钮显示状态
     */
    void setNextRightBtnEnabled(boolean enabled);

    /**
     * 设置右边第二个按钮显示状态
     */
    void setNextRightBtnVisibility(int visible);

    /**
     * 设置右边第二个按钮背景
     */
    void setNextRightBtnBackground(int resource);

    /**
     * 设置右边第二个按钮描述
     */
    void setNextRightBtnDescription(String desc);

    /**
     * 设置右边第二个按钮背景
     */
    void setNextRightBtnBackground(int resource, int text);

    /**
     * 设置右边第二个按钮背景
     */
    void setNextRightBtnBackground(int resource, int text, int textColorResource);

    /**
     * 获取右边第二个按钮的背景资源ID
     */
    void setNextRightBtnTextColor(int textColorResource);

    /**
     * 设置右边第二个按钮文字
     */
    void setNextRightBtnText(int resid);

    /**
     * 设置右边第二个按钮背景 一旦为左边按钮设置监听，将会导致无法切换menu菜单
     */
    void setNextRightBtnClickListener(OnClickListener listener);


}